home *** CD-ROM | disk | FTP | other *** search
/ Graphics Plus / Graphics Plus.iso / msdos / raytrace / pov / gen / xtal4pov / platon.inc < prev    next >
Text File  |  1994-04-09  |  3KB  |  70 lines

  1. /* PLATON.INC
  2.  
  3.    This is the crystallographically correct include-file
  4.    for the so-called platonic solids. The fifth shape, the cube
  5.    or hexahedron, can be taken from the standard include-file.
  6.    All shapes are scaled to fit into the unit cube.
  7.  
  8.    Dr. Klaus Kosten 
  9.    Inst. f. Kristallographie der RWTH, Aachen, 09.04.94
  10. */
  11.  
  12. #version 2.0
  13.  
  14. #declare Tetrahedron = intersection {
  15.     plane { <   1.000,  1.000,  1.000 >,  0.577 }
  16.     plane { <  -1.000, -1.000,  1.000 >,  0.577 }
  17.     plane { <  -1.000,  1.000, -1.000 >,  0.577 }
  18.     plane { <   1.000, -1.000, -1.000 >,  0.577 }
  19. }
  20.  
  21. #declare Octahedron = intersection {
  22.     plane { <   1.000,  1.000,  1.000 >,  0.577 }
  23.     plane { <  -1.000, -1.000,  1.000 >,  0.577 }
  24.     plane { <  -1.000,  1.000, -1.000 >,  0.577 }
  25.     plane { <   1.000, -1.000, -1.000 >,  0.577 }
  26.     plane { <   1.000,  1.000, -1.000 >,  0.577 }
  27.     plane { <  -1.000, -1.000, -1.000 >,  0.577 }
  28.     plane { <   1.000, -1.000,  1.000 >,  0.577 }
  29.     plane { <  -1.000,  1.000,  1.000 >,  0.577 }
  30. }
  31.  
  32. #declare Dodecahedron = intersection {   
  33.     plane { <  1.0000,  0.0000,  0.6181 >, 0.7239 }
  34.     plane { < -0.6181,  1.0000,  0.0000 >, 0.7239 }
  35.     plane { < -0.6181, -1.0000,  0.0000 >, 0.7239 }
  36.     plane { < -1.0000,  0.0000,  0.6181 >, 0.7239 }
  37.     plane { <  0.0000, -0.6181, -1.0000 >, 0.7239 }
  38.     plane { <  0.0000,  0.6181, -1.0000 >, 0.7239 }
  39.     plane { <  0.6181, -1.0000,  0.0000 >, 0.7239 }
  40.     plane { <  0.0000, -0.6181,  1.0000 >, 0.7239 }
  41.     plane { <  0.0000,  0.6181,  1.0000 >, 0.7239 }
  42.     plane { <  0.6181,  1.0000,  0.0000 >, 0.7239 }
  43.     plane { < -1.0000,  0.0000, -0.6181 >, 0.7239 }
  44.     plane { <  1.0000,  0.0000, -0.6181 >, 0.7239 }
  45. }
  46.  
  47. #declare Icosahedron = intersection {    
  48.     plane { < -0.3822,  0.0000,  1.0000 >, 0.8723 }
  49.     plane { <  0.0000, -1.0000,  0.3822 >, 0.8723 }
  50.     plane { <  0.0000,  1.0000,  0.3822 >, 0.8723 }
  51.     plane { <  1.0000, -1.0000, -1.0000 >, 0.8723 }
  52.     plane { <  1.0000,  1.0000, -1.0000 >, 0.8723 }
  53.     plane { <  0.3822,  0.0000,  1.0000 >, 0.8723 }
  54.     plane { < -1.0000, -1.0000, -1.0000 >, 0.8723 }
  55.     plane { < -1.0000, -0.3822,  0.0000 >, 0.8723 }
  56.     plane { <  1.0000, -0.3822,  0.0000 >, 0.8723 }
  57.     plane { <  1.0000,  0.3822,  0.0000 >, 0.8723 }
  58.     plane { < -1.0000,  0.3822,  0.0000 >, 0.8723 }
  59.     plane { < -1.0000,  1.0000, -1.0000 >, 0.8723 }
  60.     plane { < -1.0000, -1.0000,  1.0000 >, 0.8723 }
  61.     plane { <  0.3822,  0.0000, -1.0000 >, 0.8723 }
  62.     plane { <  1.0000, -1.0000,  1.0000 >, 0.8723 }
  63.     plane { < -1.0000,  1.0000,  1.0000 >, 0.8723 }
  64.     plane { <  0.0000, -1.0000, -0.3822 >, 0.8723 }
  65.     plane { <  1.0000,  1.0000,  1.0000 >, 0.8723 }
  66.     plane { < -0.3822,  0.0000, -1.0000 >, 0.8723 }
  67.     plane { <  0.0000,  1.0000, -0.3822 >, 0.8723 }
  68. }
  69.  
  70.